このページは私用WordPressの覚え書き兼、テストページです。
「SNSボタン」は、テスト検証用に仮設置しているだけなので、押しても反応しません。

004_2 wp_is_mobile タグを使うか否か

レスポンシブ対応に関する覚書き


wordpress には、あらかじめ用意されている wp_is_mobile() というタグがあります。
これは「モバイル(スマホ・タブレット)から閲覧されているかどうか」という判定をします。

しかし、wordpressのwp_is_mobile() タグは、

mobile=スマートフォン&タブレット
PC=パソコン という判定をします。

これはちょっと違うんじゃないか? というか・・・

mobile=スマートフォン
それ以外は=タブレットとPC(widthでPCとタブレットを切り替える) 
としたいう方がいいのでは という意見があります。


各メディアの画面サイズ

PC (横幅:960px)
iPhone 4 / 4S (縦:640×960 横:960×640)
iPad (縦:768×1024px 横:1024×768px)


ということで、wp_is_mobile() タグは使わずに、新たに独自タグを設定する、という方法があります。


新しく is_mobile タグを作る(functions.php)

<?php
//スマホ表示分岐(is_mobileを有効にする)
function is_mobile(){
    $useragents = array(
        'iPhone', // iPhone
        'iPod', // iPod touch
        'Android.*Mobile', // 1.5+ Android *** Only mobile
        'Windows.*Phone', // *** Windows Phone
        'dream', // Pre 1.5 Android
        'CUPCAKE', // 1.5+ Android
        'blackberry9500', // Storm
        'blackberry9530', // Storm
        'blackberry9520', // Storm v2
        'blackberry9550', // Storm v2
        'blackberry9800', // Torch
        'webOS', // Palm Pre Experimental
        'incognito', // Other iPhone browser
        'webmate' // Other iPhone browser
 
    );
    $pattern = '/'.implode('|', $useragents).'/i';
    return preg_match($pattern, $_SERVER['HTTP_USER_AGENT']);
}
?>

functions.php に上記タグを追記すると、is_mobile タグを使うことができるようになります。
タブレットはこの中に入っていないので、PCと同じ扱いになります。


条件分岐

<?php if ( is_mobile() ) : ?>
	// スマホで表示させたい内容
<?php else: ?>
	// PCで表示させたい内容
<?php endif; ?>